-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New benchmark derived from otel-launcher-go #3395
Conversation
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## main #3395 +/- ##
=======================================
- Coverage 77.9% 77.7% -0.3%
=======================================
Files 164 164
Lines 11361 11457 +96
=======================================
+ Hits 8861 8909 +48
- Misses 2301 2346 +45
- Partials 199 202 +3
|
Although these benchmarks allow comparing the two SDKs, that wasn't my goal. Here is the corresponding output for otel-launcher-go:
See it uses fewer allocations and is somewhat faster when the attribute set is re-used (due to "fingerprinting"), otherwise is somewhat slower due to extra complexity associated with memory management. |
Also note @bogdandrutu I could not identify a performance impact of the following diff
I believe this settles the question in #3199: it's no big deal to use structs for Views. If there's a statistical difference here, it's slight. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
…to jmacd/newbench
This is a near-identical copy of the benchmark used in developing the Lighstep metrics SDK.
This measures end-to-end performance of the synchronous instrument implementation using Counters. This should help settle the question in #3199.
The current numbers: